Java进阶-成员内部类

  1. 可以等同看作 成员变量
  2. 成员内部类中 不能有静态声明
  3. 可以访问外部类所有的数据
  4. 创建成员内部类方法:OutClass oc1 = new OutClass();InnerClass inner = oc1.new InnerClass();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
public class OutClass {
// 静态变量
private static String s1 = "A";

// 成员变量
private String s2 = "B";

// 静态方法
private static void m1() {
System.out.println("m1");
}

// 成员方法
private void m2() {
System.out.println("m2");
}

// 成员内部类
// 可以用访问控制权限的修饰符修饰
// publice, protected, private, 缺省
class InnerClass {
// 不能有静态声明
// public static void m3() {}

// 成员方法
public void m4() {
System.out.println(s1);
m1();
System.out.println(s2);
m2();
}
}

public static void main(String[] args) {
// 创建外部类对象
OutClass oc1 = new OutClass();
InnerClass inner = oc1.new InnerClass();
inner.m4(); // 输出:A m1 B m2
}
}